Electronic data entry and analysis system

ABSTRACT

An electronic system for entering and analyzing data relating to at least one attribute of an object includes a data entry means displaying a pictorial image of the object and providing a plurality of first indicia for identifying a location of the attribute in the object, and a plurality of additional indicia for identifying a parameter of the attribute. The data identifying the attribute are entered in the system when one of the first indicia in combination with at least one of the additional indicia are activated. A controlling means within the data entry means controls the data entry means in response to the entered data, which are processed by a processing means. When installed on a workstation on a production line, the electronic system and the data entry means find particular utility in entering and processing data relating to location and nature of a defect occurring in a workplace, thereby providing in-depth readily-usable information on the status of the production process, such that effective corrective actions can be undertaken immediately. A unique software operates the system.

This application is a division of application Ser. No. 08/268,650, filed Jun. 30, 1994, now U.S. Pat. No. 5,508,911.

FIELD OF THE INVENTION

The present invention relates to the field of data entry and analysis, and more particularly, to an apparatus and method employed on a production line for the automatic entry of data and for the further processing of said data.

BACKGROUND OF THE INVENTION

In today's manufacturing environment, monitoring a production process and collecting statistical information on the status of the production process is considered essential in achieving world class quality standards.

Usually, in order to register a defect occurring in a workpiece, an operator fills out a tally sheet where a brief written identification of each occurred defect should be included. At the end of a shift, a quality engineer enters data taken from all tally sheets into a computer system for computation and graphing in order to analyze the entered data and to undertake needed corrective actions.

Unfortunately, many manufacturing companies may find little benefit from data thus collected. Sometimes, the vague nature of the data collected does not provide causal clues, and the difficulty in collecting the data slows down the production process itself and leads to both errors in the data content and decreases productivity effectiveness.

Contemporary data collectors like, for example, Genesis models QA3000/QA8300, are intended, among many other functions, for structuring a data-base on the basis of user-defined identifiers of the defect occurred, such as model, serial number, location of the defect, severity, disposition and so on. The Genesis collectors accept inspection input from keyboard, bar code wand, cases scanner, CCD wand and/or voice recognition circuits. However, these collectors are expensive, and sometimes

In accordance with the teachings of the present invention, a system for entering and analysis of data relating to a defect occurring in a workpiece includes a data entry means for displaying a pictorial image of the workpiece and for providing a plurality of first and second indicia, respectively. A defect is identified by its position in the workpiece and by a type-of-error. Each of the first indicia identifies the position of the defect in the workpiece, and each of the second indicia identifies the type-of-error in the workpiece. In the preferred embodiment, the data entry means includes a front screen, a sketch board and a keyboard disposed behind the sketch board and providing a controlling means and first and second keys corresponding to first and second indicia.

Once data relating to the defect are entered by activating one of the first indicia in combination with one of the second indicia, the controlling means provides delivering of said data (in real-time and/or periodically) to a processing means, including a computer, for collecting, processing, and outputting said data to the computer display or printer. Data are also displayed on a display, which can be implemented as a stand-alone display or as a display integral with the data entry means.

The present invention also finds utility as a system for entry and analysis data relating to any attribute of any object.

A data entry means displays a pictorial image of the object, and provides a plurality of first indicia thereon in juxtaposition to the pictorial image of the object (or located directly on it), each first indicia for identifying a position of the attribute of the object. The data entry means also provides at least one group of second indicia, each second indicia for identifying a required characteristic of the attribute of the object. The data identifying the attribute are entered in the system when one of the first indicia in combination with at least one of the second indicia are activated.

The present invention also may find application as an apparatus for entering and analysis of one data associated with an object.

These and other objects of the present invention will become apparent from a reading of the following specification taken in conjunction with the enclosed drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a pictorial view of a preferred embodiment of the present invention installed on a production line.

FIG. 2 is a perspective view of the data entry means of the present invention.

FIG. 3 is a perspective exploded view of the data entry means of the present invention.

FIG. 4 is a perspective exploded view of the data entry means including a plurality of sketch boards, each sketch board for a particular workpiece.

FIGS. 5 and 6 are top plan views of two alternative dispositions of indicia, respectively.

FIG. 7 is a schematic block diagram of the present system.

FIG. 8 is an electrical wiring diagram of the circuit disposed on a PCB within the data entry means.

FIGS. 9A-9I are flowcharts of the PADD program.

FIGS. 9J-9K are flowcharts of interrupt service used in PADD program.

FIGS. 10A-10D are flowchart of the PAD8 program.

FIGS. 11A, 11B, 11C and 11D are flowcharts of the MULTIP& MULTINP programs.

FIG. 12 is an example of the defect matrix form.

FIG. 13 is a change-position-or-error form.

FIGS. 14A, 14B, 14C and 14D are flowcharts of the MATRIXP& MATRIXP programs.

FIG. 15A and 15B are examples of a printout from MATRIXP or MULTIP.

FIG. 16 is a flowchart of CHANGE&P program.

FIG. 17 is a flowchart of PRTDSCHR.WQ2.

FIG. 18 is a Pareto chart of all defect positions regardless of type-of-error.

FIG. 19 is a Pareto chart of all defect types-of-errors regardless of defect positions.

FIG. 20 is a Pareto chart of the ten most numerous defects.

FIG. 21 is a perspective view of one of the modifications of data entry means, according to the present invention.

FIG. 22 is a perspective view of another modification of data entry means, according to the present invention.

FIG. 23 is a printout of the LATEST.DAT file.

FIGS. 24A, 24B, 24C are printouts of the BACKUP.DAT, BACKUP.OLD, and BACKUP.BAK files.

FIG. 25 is a data file PANDE.DAT.

DETAILED DESCRIPTION OF THE INVENTION

Referring to FIGS. 1-3, data entry means 1 of the present invention are installed on work stations 2 of a production line 3. Each operator 4 inspects a workpiece 5. A pictorial image 6 of the workpiece 5 is displayed on the data entry means 1. When the operator 4 finds a defect 7 in the workpiece 5, he (or she) touches (or presses) one of indicia 8, related to a position of the defect 7 in the workpiece 5, and one of indicia 9 related to a type-of-error.

It will be appreciated that there are a plurality of possible defect positions in the workpiece, and that there are different types-of-errors which may occur in the workpiece. Availability of a plurality of indicia 8 and a plurality of indicia 9 allow the operator 4 to register significant combinations of information, thereby covering practically any defect situation by a simple pushing (or touching) of the position indicia 8 in combination with the type-of-error indicia 9.

Being entered, the data are processed by a processing means 10. The processing means 10 includes a computer 11 operated by software 12. A central computer 13 can be used, if desired. The computer 11 can be any commonly available personal computer ("PC"), preferably with a computer display 14, to perform analytical and data transmissions functions and to display the collected data.

The software 12 executes four basic functions: (1) displays the data transmitted from the data entry means 1 in a matrix format on the computer display 14 as it is received; (2) provides a simple histogram of accumulated defects for all positions and the histogram for all types-of-errors; (3) writes the data in a file for transfer to other programs and/or computers or writes the data directly to another computer; and (4), if a printer is connected, prints the entire defect matrix as well as the ten (10) most numerous defects arranged sequentially. In addition, the software 12 may allow the user to configure multiple data entry means 1 in a different communication network, as well as provide meaningful labels to the various locations and types-of-errors related to defect 7.

Each data entry means 1 also may be implemented with a display 15, which may be a stand-alone display or may be integral with the data entry means 1.

By having the knowledge of position and nature of the defect 7, the quality engineer can determine wherein the process and by what means the defect 7 was created. Rapidly, corrective action can take place, and the effects can be learned in a real-time fashion as the data can be accessed anytime during or after the production process, and the information is available immediately on the computer display 14.

The data entry means 1, as shown in FIGS. 2, 3 and 4, is a device for automatic entry of data, and actually provides a structural electronic alternative to a tally sheet.

In one embodiment, the data entry means 1 is an approximate 12"×18" tablet, which consists of a front screen 16, a sketch board 17 disposed behind the front screen 16 and a key board 18 behind the sketch board 17. The data entry means 1 provides multiple position indicia 8 (in the present embodiment, twenty) for identification of locations of the defects in the workpiece 5, and multiple type-of-error indicia 9 (in the present embodiment, ten). The indicia 8, 9 may be implemented as buttons to be pressed or as tactile membranes to be touched. Their disposition on the front screen 16 can be different, for example, as shown in FIGS. 5 and 6. Also, the indicia 8 can be disposed directly on the pictorial image 6.

The sketch board 17 is a pre-printed die cut paper sheet. On this sheet a manufacturing manager will dispose a pictorial image 6 of the workpiece 5 or a portion thereof, and also a description of the workpiece 5 with illustrations, photos, etc. In addition, each type-of-error possible for the workpiece 5 can be described in the numbered column 19 close to the right side 20 of the sketch board 17. The sketch board 17 has a plurality of apertures 21 corresponding to position indicia 8 and a plurality of apertures 22 corresponding to type-of-error indicia 9. Each aperture 21 can be connected by a reference line 23 to the area 24 of possible location of the defect 7. The apertures 21 are disposed along the perimeter 25 of the sketch board 17. However, if the indicia 8 are disposed directly on the pictorial image 6, each of indicia 8 on the respective area 24, the apertures 21 will be disposed in precise registration with said indicia 8.

The front screen 16 has a transparent portion 26, through which the sketch board with all sketched thereon information is displayed. The front screen 16 has also a plurality of apertures 27 and 28, respective to the apertures 21 and 22. Apertures 21, 27 and position indicia 8 are in precise registration with each other, as well as the apertures 22, 28 and type-of-error indicia 9.

The data entry means 1 may include a plurality of sketch boards 17, each for a particular workpiece 5. The sketch boards 17 will accompany the data entry means 1 in a tear-off pad arrangement 29 (FIG. 4) to be removably interchangeable. Each sketch board 17 will include a detailed pictorial description including the pictorial image 6 of each particular workpieces 5, and also a numbered column of types-of-errors possible for this particular workpiece 5.

Supporting the die-cut sketch board 17 is some sort of light-weight, inexpensive backing support board 30, which provides apertures 31 corresponding to apertures 21, 27 and indicia 8, and apertures 32 corresponding to apertures 22, 28 and indicia 9, and being in precise registration with the corresponding apertures and the indicia.

The keyboard 18 is disposed behind the support board 30 and contains 20 position keys 33 and 10 type-of-error keys 34. Keys 33 and 34 each includes a contact portion 35, such that the contact portions 35 of keys 33 are protruded through the apertures 21, 27 31, and the contact portions 35 of the keys 34 are protruded through the apertures 22, 28, 36, respectively.

The contact portions 35 may be implemented as buttons to be pressed, or as a tactile membranes to be touched by fingers or by a probe, thus activating the respective keys 33, 34. It will be appreciated by those skilled in the art that many other implementations are also allowable, for example, the keys 33, 34 can be activated by laser means, or by another means providing a focused beam.

The keyboard 18 may be a single Printed Circuit Board (PCB) 36, or a combination of PCBs hard-wired together. The PCB 36 includes an electronic circuitry 37.

Assembled together, the front screen 16, the sketch board 17, the keyboard 18 and the support board 30 are fastened together by means well known by those skilled in the art, such that to provide protrusion of each contact members 35 through the respective apertures.

Referring to FIGS. 7, 8 the electronic circuitry 37, which implements the data entry means 1, includes a micro-controller 38, disposed on the PCB 36, and central to the operation of the system. The micro-controller 38 is connected directly to the array of switches 39 by means of rows and columns of switches 39 connected to two 8-bit parallel ports 40, 41 of the microcontroller 38, respectively. Switches 39 correspond to respective keys 33, 34 and are energized when the respective keys 33, 34 are activated. Port 40 drives 6 rows of the switches 39 through steering diodes 42. The remaining two pins of the port 40 are used for the light emitting diode (LED) 43, which serves as a visual feed-back means, and for the audible feed-back means 44. The LED 43 lights when the first key (33 or 34) of the possible pair of keys 33 and 34, is pressed, touched or somehow else is activated. The LED 43 extinguishes when the second key of this pair of keys (33 and 34) is activated.

The audible means 44 beeps a long beep for the defect position key 33, and a short beep for the defect type-of-error key 34. The LED 43 alerts the operator 4 that the first key of the pair of keys (33, 34) has been activated, and that the second key needs to be activated to complete the defect 7 indication. The audible beep is supplemental feedback that informs the operator 4 that his (or her) intentions have been registered.

The operator must press both a defect position key 33 and a defect type-of-error key 34 to register one defect 7. The sequence (position-then-type-of-error or type-of-error-then-position) is unimportant, although the operator is encouraged to establish a habit of one sequence or the other.

If the operator presses a key (33 or 34) incorrectly for the first key, there is a way to correct it. Simply press the same first key or the correct key (of the same kind, i.e. position or type-of-error) to clear the LED 43. Then press the correct key of the same kind and the LED 43 will illuminate again.

To correct an error in the second key, the operator must report the error to the production line manager, and the manager will remove that incorrect defect report from the tally displayed on the computer 11.

Port 41 is used to read 5 columns of switches 39. The remaining three pins are used to control the stand-alone display 15. The microcontroller 38 delivers data to the display 15 through port 45. All communication to the stand-alone display 15 are accomplished via the display connector 46. Any technology of display 15 can be used; however, for this particular system two types, a vacuum fluorescent display and a liquid crystal display, have been chosen. One signal (DB25-3) is used by the microcontroller 38 to distinguish between these two types of displays 15. This signal is hard-wired to either ground or +5 Volts to indicate the type of the display 15.

The microcontroller 38 uses the driver/receiver 47 to communicate with the computer 11, and, particularly, to deliver entered data to the computer 11. The driver/receiver 47 can be any means of communication; however, in the this implementation is either RS-232C or Frequency Shift Keying ("FSK") for the PCB 36. The communication of the microcontroller passes through a communication connector 48, preferably a DB-9 connector.

The electronic circuitry 37 on the PCB 36 is fed by a power supply 49. Raw power enters the PCB 36 by means of a power connector 50. It is then rectified by a bridge rectifier 51, and conditioned and regulated by power regulating and conditioning means 52.

The embodiments of the invention, described herein by figures and by flowcharts, record defects as the coincidence of two different attributes corresponding to two different kinds of indicia. In this case, the attribute and indicia of the first kind represent the defect position on the workpiece. The attribute and indicia of the second kind represent the defect type-of-error on the workpiece. The data being recorded is a defect specified by a position and a type-of-error. However, it could be any kind of data, not necessarily a defect, specified by any number of attributes, not necessarily two. Furthermore, a given attribute may have any number of instances, and may relate to any object.

In the examples described herein, the instances of the attribute and indicia of the first kind (indicia 8) number twenty, and have the following names: FADE/BASS/TREBLE region, BAL/VOL/SEL region, SEEK button, AM/FM button, upper central region, upper right region, 1 button, 2 button, 3 button, 4 button, 5 button, lower right region, lower central region, SET button, lower left region, BASS/TREBLE graphic & plastic, FADE graphic & plastic, VOL/POWER graphic, SEL/PUSH graphic, and BAL/L/R graphic.

The instances of the attribute and indicia of the second kind (indicia 9) number ten, and have the following names: trash in paint, bad graphic, broken pin/USDB, scratch, off location graphic, short, light leak, button failure, broken leg/bad optic, and poor heat stake/long gate. In this case, the third instance of the indicia of the second kind, broken pin/USDB, combines two types-of-errors, namely a broken pin and an up-side-down button, that can never occur together in the same position, being mutually exclusive so far as the attribute and indicia of the first kind is concerned. Thus, in combination with the attribute and indicia of the first kind, namely the position (indicia 8), the type-of-error can be uniquely determined. This method of combining mutually exclusive instances is valuable when more instances exist than buttons are available on the data entry means. Other occurrences of mutually exclusive instances, in this example, are broken leg/bad optic and poor heat stake/long gate.

The three embodiments of the invention serve different requirements. The first requirement is that of a single data entry means 1 which accumulates data throughout an entire shift or throughout an entire day. At the end of that shift, or day, a computer 11 is connected, and the data is uploaded from the data entry means 1 to the computer 11. The data can be examined, printed, analyzed, and plotted. Then the computer 11 is turned-off (to await the conclusion of another day or another shift), or perhaps taken to another production line for the uploading of more data of a different type (this requires either that the personal computer program be restarted or that the RESET PAD button on the computer screen be activated to clear the defect matrix), or taken to another production line for the uploading of more data of the same (in which case this new data is accumulated onto the existing defect matrix). The entire process begins again at the commencement of the next shift or next day. Data printing, analysis and plotting are accomplished, in this case, with the spreadsheet PRTDSCHR.WQ2, designed to operate with the commercial spreadsheet package Quattro® Pro (registered trademark of Borland International, Inc.).

The first embodiment uses the program PAD8 in the microcontroller, and either MATRIXP or MATRIXNP in the personal computer (for computers connected to printers or not connected to printers, respectively).

The second requirement is that of multiple data entry means 1 continuously connected to a computer 11. The computer 11 is used to continuously display defect data in real-time. At the end of a shift, the OUTPUT button on the computer display 14 is activated with the mouse (or alternatively by the computer keyboard 55), and the data files are written. Then those files are either transferred to another computer for off-line processing so as not to interrupt or delay the next shift, or if processing is speedy then processing can be accomplished immediately after the files are written and just before the next shift begins. This processing is, as before, data printing, analysis and plotting with the spreadsheet PRTDSCHR.WQ2, designed to operate with the commercial spreadsheet package Quattro® Pro.

This second embodiment uses the program PADD in the microcontroller 38, and either MULTIP or MULTINP in the personal computer 11 (for computers connected to printers or not connected to printers, respectively).

The third embodiment of the invention uses a display 15 (stand-alone or integral), and never needs to be connected to a computer 11. In this case, the display 15 can be any of several types, including, but not limited to, Liquid Crystal Display (LCD), Vacuum Fluorescent (V/F) display, Field Emission Device display, Light Emitting Diode display, Cathode Ray Tube display, and Plasma Discharge display. Program PADD incorporates code to sense one of two particular displays (one is an LCD; the other is a V/F display), determine the four defects with the greatest counts, and display those four most numerous defects. Realizations of the invention with stand-alone or integral display 15 need not make use of data processing.

A fourth embodiment, not described by flowcharts or figures herein, would incorporate the features of PAD8 and PADD into a single microcontroller program, and incorporate the features of MATRIXP and MULTIP, or MATRIXNP and MULTINP, into a single personal computer program. This personal computer program would appear much the same as MULTIP or MULTINP, but would include an additional button on the same screen that includes the RESET PAD button. This button would be named UPLOAD, and would cause a command to be sent from the computer 11 to each of the data entry means 1. This command would cause each data entry means 1 to send its defect data back to the computer 11.

Thus, the battery back-up feature of the microcontroller 38 would be put to good use, allowing recovery from a manufacturing plant-wide power failure. In this case, the computer operator would, after initiation of the personal computer program, activate the SETUP button to display the screen that exhibits the RESET PAD and UPLOAD buttons. Then they would activate the UPLOAD button. Then all defect data from all the data entry means 1 connected to the computer 11 would be accumulated in the defect matrix on the DefectMatrix screen, effecting a complete recovery from the power failure.

The procedure to begin a new shift would be slightly different. Upon initiating the personal computer program, the operator would have to activate the RESET PAD button in order to clear the defect matrix in the memory of the microcontroller. Otherwise, in the event of a future UPLOAD, the defect matrix would be contaminated by data from earlier shifts.

Data processing is the same as for the first two embodiments described above.

The microcontroller 38 uses the PADD program inside the data entry means 1 to communicate with the computer 11 and the computer display 14 continually, and also to deliver data to the display 15 (stand-alone or integral) continually. Referring to FIGS. 9A-9K and Appendix A, PADD consists of an outer loop that begins by initializing pertinent registers, variables, and workspaces. Then each row of the switches 39 is interrogated. After the last row is interrogated, determination is made of the state of a flag called the reset flag. If the reset flag is set, the process begins again with initialization. Otherwise, if the reset flag is not set, the process begins again with the reading of the next row of switches 39.

The subroutine, which reads a row of switches 39, begins by initializing necessary variables, registers, and workspaces. Next, a time delay is introduced to slow the rate of scan of the array of switches 39. Then the switches 39 within the given row are read.

A determination is made of whether any switch 39 is active. If none is active, then a sequence of zeroes are written into memory for each column of this row. If some column is active, then the program proceeds to determine which column is active. As each column is examined, a zero or a one is written into memory for that column.

Then the recent history of column one is examined for a condition that indicates a valid key (33, 34) press. If column one has a valid key (33, 34) press, then the program initializes timer 0. Otherwise, the recent history of column two is examined for a valid key (33, 34) press, and so forth through column 5.

If no valid key (33, 34) presses are detected, then the subroutine returns. If a valid key (33, 34) press is detected, then timer 0 is initialized, the timing loop counter is initialized, and a determination is made of the necessity of a double-length beep. If a double-length beep is required (because the key pressed was a defect position key 33) then the timing loop counter is doubled.

Next, the beeper is turned on. Then timer 0 interrupts are enabled. The LED 43 is toggled. The previous key pressed is stored in memory as the "2nd previous key". The present key press is stored as the "previous key".

Next, a determination is made of whether the "previous key" and the "2nd previous key" constitute a legitimate key press pair, i.e. a combination of a defect position key 33 and a defect type-of-error key 34 or a combination of a defect type-of-error key 34 and a defect position key 33. If the pair is legitimate, then a determination is made of the state of the LED 43. If the LED 43 is not turned on, then the program goes on to update the defect matrix in memory. If the LED 43 is off, the program saves the row flag of the previous key, and returns. If the pair of key (33, 34) presses is not legitimate, the program saves the row flag of the previous key, and returns. The row flag is set in one state for defect type-of-error keys 34, and in another state for defect position keys 33.

The update of the defect matrix begins with an inspection of the "2nd previous key". If it equals the initial value it means that only one key has been pressed since the data entry means 1 has been turned on, and no further action is required other than returning from this subroutine.

Then a determination is made of whether the "2nd previous key" was a defect position key 33 or a defect type-of-error key 34. If it was a defect position key 33, then the previous key was a type-of-error key 34, and the pair are processed appropriately to produce a defect type-of-error number (from 1 to 10) and a defect position number (from 1 to 20), corresponding to A to T.

If the "2nd previous key" was a defect type-of-error key 34, then the previous key was a defect position key 33, and the pair are processed appropriately to produce a defect type-of-error number and a defect position number.

Next, the unique defect number is computed.

A determination is made to see if the serial transmitter is occupied with the chore of transmitting a defect character received from another data entry means 1 or a reset character or other command character received from the computer 11. In this case, the pass-through transmission flag is set. If not, then the defect transmission flag is set in order to claim the resources of the serial transmitter. Then the defect character is transmitted. The data pointer is advanced to the appropriate memory cell, and the data in this memory cell is incremented by 1 count.

If the pass-through transmission flag is set, then the program loops back to test it again until it becomes inactive.

After the defect character is transmitted, and the defect matrix is incremented, the program searches the defect matrix for the biggest detect. This defect and its location, or defect number, is recorded. Then the defect count is replaced with zero.

Next the second biggest defect is found. Likewise, it and its location are recorded, and it is replaced with zero.

The third and fourth biggest defects are found.

Now the display 15 is initialized by sending the cursor to the home position, and the display 15 is cleared.

The biggest defect is decoded and then displayed on the display 15.

The decoding subroutine breaks the defect location into a position number and a type-of-error number. It begins by saving the defect location to work registers. Then other registers are initialized. Now a loop begins with the incrementing of the defect type-of-error. If it is greater than 10, it is reset to 0 and the position number is incremented. The loop counter work register is decremented, tested for zero, in which case the subroutine returns, otherwise the loop begins again.

The display subroutine begins by obtaining the position number, and then displaying it. Next it obtains the defect type-of-error number and determines whether it is less than 9. If it is, then it is displayed along with two spaces. If not, then 10 is displayed followed by a single space.

Next is the entry point to display a defect count. It begins by obtaining the count, initializing the display registers and resetting the leading zero flag.

Then if the count is zero, two spaces are displayed before displaying the 0. If it is not zero, then the least significant digit character is incremented. If this is not greater than the 9 character, then the work register is decremented and tested for zero. If it has not been reduced to zero, then the loop begins again with the incrementing of the least significant digit character.

If this character is great than the 9 character, then it is reset to the 0 character and the middle digit character is incremented. If this character is not greater than the 9 character, then the work register is decremented and tested for zero, as above. If the middle digit character is greater that the 9 character, it is reset to the 0 character and the most significant digit character is incremented. Then the work register is decremented and tested for zero, as above.

When the work register is reduced to zero, the most significant digit character is tested for the 0 character. If it is the 0 character, then the character to be displayed is set to the space character and the leading zero flag is set and the space character is displayed. If the most significant digit character is not the 0 character, then it is displayed.

Next the middle digit character is tested for the 0 character. If it is not, then it is the character to be displayed, otherwise the leading zero flag is tested. If it is set, then the character to be displayed is set to the space character. If it is not set, then the character to be displayed is set to the 0 character. The character is displayed.

Finally, the least significant digit character is displayed, and the display subroutine ends with a return.

The serial interrupt service routine begins by saving the accumulator onto the stack.

Then a determination is made about the serial transmitter interrupt flag. If it is set, then this is a serial transmitter interrupt, and the serial transmitter interrupt flag is cleared. Then the serial pass-through flag is tested. If it is set, then it is cleared, and interrupt service moves on to test for serial receiver interrupt tests. Otherwise, if the serial pass-through flag was not set then the serial defect transmission flag is set, and interrupt service moves on to test for serial receiver interrupt tests.

The serial interrupt flag is tested. If it is not set, then this is not a serial interrupt, and interrupt service terminates after the accumulator is reloaded from the stack.

If the serial interrupt flag is set, then a character is read from the received serial data buffer. This character is tested for the special reset character. If it is the reset character, then the reset flag is set. If it is not, then the serial defect transmission flag is tested.

If the serial transmission flag is set, then interrupt service jumps ahead to reload the accumulator and return from interrupt service. If the serial transmission flag is not set, then the serial pass-through transmission flag is set. The appropriate character is transmitted. The serial receiver interrupt flag is cleared, and finally the accumulator is reloaded before returning from interrupt service.

Timer 0 interrupt service is executed only upon receipt of a timer 0 interrupt. These interrupts are generated internally by timer 0, the rate depending upon constants previously loaded when timer 0 was initialized.

Interrupt service begins by decrementing the timing loop counter. If this counter is now zero, then the beeper is turned off, timer 0 interrupts are disabled, and interrupt service terminates with a return. Otherwise, if the timing loop counter is not zero, the program returns from interrupt service.

The microcontroller 38 uses the PAD 8 program inside the data entry means 1 for implementations of the system of the present invention, that utilize the DUMP key 53 to output data to the computer 11 and to the computer display 14. This program also includes back-up procedures to protect the system against data loss from power failure. In this version, the DUMP key 53 is activated periodically for example at the end of the shift, and data are up-loaded into the computer 11. It is possible, in other embodiments, to activate the communication from the data entry means 1 to the computer 11 in other ways besides by pressing a DUMP key 53. If desired, activation by telephone modem 58 (shown in FIG. 7) is possible. This telephone modem 58 connects directly to the computer 11, which upon receipt of appropriate commands, queries the data entry means 1 for its data. Another possibility of initiating this communication has been discussed earlier in reference to the UPLOAD button in a personal computer program of the fourth embodiment of the present invention.

Referring to FIGS. 10A-10D and Appendix B, PAD8 program consists of an outer loop that begins by initializing pertinent registers, variables, and workspaces. Then each row of the switches 39 is interrogated. After the last row is interrogated, the process begins again with initialization.

The subroutine which reads a row of switches 39 begins by initializing necessary variables, registers, and workspaces. Next, a time delay is introduced to slow the rate of scan of the array of switches 39. Then the switches 39 within the given row are read.

A determination is made of whether any switches 39 are active. If none are active, then a sequence of zeroes are written into memory for each column of this row. If some column is active, then the program proceeds to determine which column is active. As each column is examined, a zero or a one is written into memory for that column.

Then the recent history of column one is examined for a condition that indicates a valid key (33,34) press. If column one has a valid key press, then the program initializes timer 0. Otherwise, the recent history of column two is examined for a valid key press, and so forth through column 5.

If no valid key presses are detected, then the subroutine returns. If a valid key press is detected, then timer 0 is initialized, the timing loop counter is initialized, and a determination is made of the necessity of a double-length beep. If a double-length beep is required (because the key pressed was a position key as opposed to a type-of-error key) then the timing loop counter is doubled.

Next the beeper is turned on. Then timer 0 interrupts are enabled. The LED 43 is toggled. The appropriate character, that represents the key pressed, is stored in memory.

A determination is made of the key pressed. If it was not the DUMP key 53, then the subroutine returns. If it was the DUMP key 53, then the data pointer is initialized, and a character is loaded from memory. If this character is not the DUMP character, then it is transmitted out the serial port (to be captured by the computer 11 if it is present). Then some time delay is introduced to allow the computer to receive the transmission. Then a new character is loaded from memory. This loop continues until the DUMP character is loaded from memory. At this point, the data pointer is initialized, and the subroutine returns to them main loop of the program.

Timer 0 interrupt service is executed only upon receipt of a timer 0 interrupt. These interrupts are generated internally by timer 0, the rate depending upon constants previously loaded when timer 0 was initialized.

Interrupt service begins by decrementing the timing loop counter. If this counter is now zero, then the beeper is turned off, timer 0 interrupts are disabled, and interrupt service terminates with a return. Otherwise, if the timing loop counter is not zero, the program returns from interrupt service.

Two kinds of interrupt service are used in PADD (FIG. 9J-9K), and one kind is used in PAD8 (FIG. 10B).

Both use Timer 0 interrupt service, and PADD uses Serial Input/Output interrupt service. If Timer 0 and Serial Input/Output interrupts are enabled, then they can interrupt the execution of PAD8 or PADD at any point of execution and at any time.

Upon receipt of the interrupt, either because Timer 0 has Overflowed or because Serial Input data is available in the serial input buffer or because Serial Output data has finished shifting out of the shift register, PADD or PAD8 completes its currently executing instruction. Then the Program Counter is incremented to the next instruction. The Stack Pointer is incremented to the next memory location. The low byte of the Program Counter is stored at memory pointed to by the Stack Pointer. Then the Stack pointer is incremented again. Now the high byte of the Program Counter is stored in memory pointed to by the Stack Pointer. Now the Program Counter is loaded with the starting address of the appropriate interrupts service routine and interrupt service commences.

At the conclusion of this interrupt service routine, the final instruction, RETI--return from interrupt, reverses the above procedure. First the high byte of the future value of the Program Counter is loaded from memory pointed to by the Stack Pointer. Next the Stack Pointer is decremented. Then the low byte of the future value of the Program Counter is loaded from memory pointed to by the Stack Pointer. Now the Stack Pointer is decremented again. Finally,the Program Counter is replaced with the future value, just retrieved from the Stack, and program execution continues where it left off before the interrupt.

Timer 0 generates an interrupt when it overflows. It overflows when it increments to its limit from its initial count. It is set to some convenient value that generates a single length beep of acceptable length. A flag in the PAD8 or PADD program, whose value depends of which type of key has been pressed (position or type-of-error), determines whether the beep is lengthened to a double-length beep.

Referring to FIG. 11A, 11B, 11C, 11D and Appendixes C and D, MULTIP and MULTINP are printing and non-printing versions of programs for systems of multiple data entry means 1 which execute the PADD program that require the computer 11 to be connected continually in order to provide data collection and data display in real-time.

The displayed form is the same for both programs. MULTIP and MULTINP are event driven programs.

Clicking the Position (row) label causes the Row Value displayed in the Row Value Text box to be tested. Values less than one (1) are set to one (1). Values greater than twenty (20) are set to twenty (20). Then execution returns to await another event.

Clicking the Error (column) label causes the Column Value displayed in the Column Value Text box to be tested. Values less than one (1) are set to one (1). Values greater than ten (10) are set to ten (10).

Clicking in the Row Value Text box or Column Value Text box allows keyboard 55 editing of those values. Subsequent clicking of the Increment button or Decrement button then adjusts the defect count specified by the Row Value and Column Value displayed in the defect matrix (shown in FIG. 12).

Increment and Decrement, but especially Decrement, provide the computer operator (or the quality engineer) the means to correct the operator's 4 mistakes.

Clicking the Output button activates the Output Date To File Click subroutine. First, an output file is opened. Its name reflects the date and time. For each row, defect data is written to file, then the sum of that row is written to file. After all twenty (20) rows are completed, the sums of each column are written to file along with the grand total. Finally the start and end times and dates are written to file. If the print flag is set, then PrinterOutput is called to output data to the printer 54.

Clicking the Setup button hides the DefectMatrix form (FIG. 12) and shows the ChangePositionOrError form (FIG. 13).

The date and time are displayed in the date and time labels respectively. They are updated every second by the one (1) second timer (Timer 1).

Clicking the Reload button saves current defect data and start time and date to BACKUP.OLD, and reloads defect data, and start date and time from BACKUP.DAT. This button, and BACKUP.DAT, provide the means to recover from power failure, because BACKUP.DAT is updated every time the defect matrix changes. In case the Reload button is activated unintentionally, BACKUP.OLD provides the means to recover from such a mistake. This recovery is not automatic. The computer operator (or the quality engineer) must copy BACKUP.OLD to BACKUP.DAT at the DOS command line prompt, execute MULTIP or MULTINP and click the Reload button.

Clicking the Quit button ends the program and returns to the DOS prompt.

Timer 1 invokes an interrupt every second. First the time and date labels are updated. Then, if serial data is available, a character is read from the input serial port. It is converted to a number. If this number is within the legitimate range, then the Row and Column for the defect are computed and the appropriate defect is incremented. Otherwise, Timer 2, the error message timer, is activated, ErrorFlagl is set true, the ErrorMessage is set to "Error," and a message box is displayed with the character and "Error". Next, the reset flag is tested. If it is set, then label captions are set to their backup values (all zeroes), Row and Column are initialized to zeroes, backup data is written to BACKUP.DAT, and the reset flag is reset to zero.

Timer 2 is the error timer that lasts for four (4) seconds. It tests ErrorFlag1. If it is true then it is set false, the ErrorMessage is cleared, and future Timer interrupts are disabled. These actions turn off an error message, that had been turned on in the Timer 1 subroutine, after four (4) seconds.

Timer 3 is activated once, one millisecond after initiation of the program. Its purpose is to set default and initial values. It is never executed again.

Timer 4 interrupts every ten (10) seconds. It writes BACKUP.DAT to BACKUP.BAK as a safety precaution in case power should be lost while BACKUP.DAT is being written by Increment-Click or Decrement-Click, for instance.

The main defect matrix consisting of ten (10) columns and twenty (20) rows is displayed as one big label (FIG. 12).

The twenty (20) sums to the right of the twenty (20) rows are the sums of defects for each row regardless of the type-of-error. They are incorporated into one label.

The ten (10) sums below the defect matrix are the sums of defects for each column regardless of the defect position. They are incorporated into one label.

Finally, the grand total is a label below the twenty (20) sums regardless of type-of-error and right of the ten (10) sums regardless of positions.

Referring to FIGS. 14A, 14B, 14C, 14D and Appendixes E and F, MATRIXP and MATRIXNP are printing and non-printing versions of programs for single data entry means 1 systems that require the computer 11 to be connected only when data is dumped by pressing the DUMP key 53 on the data entry means 1.

MATRIXP and MATRIXNP are event driven programs.

The displayed form, shown in FIG. 12, is the same for both programs, and is the same as the displayed form for MULTIP and MULTINP as well.

The principal differences between MULTIP and MATRIXP, and MULTINP and MATRIXNP, are to be found in the Timer 1 subroutine.

Timer 1 invokes an interrupt every second. First the time and date labels are updated. Then, if serial data is available, a character is read from the input serial port. If it is within the legitimate range then the Row and Column for the defect are computed. Otherwise, Timer 2, the error message timer, is activated, ErrorFlag 1 is set true, the ErrorMessage is set to "Error", and a message box is displayed with the character and "Error" and the subroutine returns. After Row and Column are computed, a determination is made to see if this keypress is a type-of-error. If it is then a determination is made to see if this key is not equal to the LastErrorKey or if the LastKey was a Position. If so, then the ErrorKey is computed, LastKey is set to Error, and LastErrorKey is set to this ErrorKey. If not, then ErrorKey is set to 0 and LastKey is set to Error. If this keypress is a position, then a determination is made to see if this key is not equal to the LastPositionKey or if the LastKey was an Error. If so, then the Position Key is computed, LastKey is set to Position, and LastPositionKey is set to Position. If not, then PositionKey is set to 0 and LastKey is set to Position. Next, the reset flag is tested. If it is set, then label captions are set to their backup values (all zeroes), Row and Column are initialized to zeroes, backup data is written to BACKUP.DAT, and the reset flag is reset to zero.

Just as in MULTIP and MULTINP, MATRIXP and MATRIXNP allow for recovery from a mistake caused by inadvertently activating the Reload button. The computer operator (or the quality engineer) must quit MATRIXP (or MATRIXNP), copy BACKUP.OLD to BACKUP.DAT at the DOS command line prompt, execute MATRIXP (or MATRIXNP) again, and click the Reload button. This restores the original defect matrix (FIG. 12).

An example printout from MATRIXP or MULTIP is shown in FIG. 15A. FIG. 15B shows the ten (10) most numerous defects.

Referring to FIG. 16 and Appendix G, CHANGE&P is a Visual Basic form, used by MULTIP, MULTINP, MATRIXP, and MATRIXNP, to examine and edit the twenty (20) position and ten (10) type-of-defect labels, and to effect a reset of the display means 1 and the defect matrix displayed on the computer display 14 (shown in FIG. 12).

It contains a Display button, a Reset Pad button, a Quit button, an Edit Box, ten (10) Type-of-error labels, and twenty (20) Position labels.

Upon clicking the Display button with the mouse, the ten (10) TypeError strings are copied to the type-of-error label captions, and the twenty (20) Position strings are copied to the position label captions. Then execution returns to await another event.

Clicking any Position label or TypeOfError label sets the EntityBeingEdited variable to the appropriate value, and copies that label to the Edit Box.

Clicking on the EditBox allows keyboard 55 edits to change the corresponding label, and updates the position and type-of-error label data file, PANDE.DAT.

Clicking the Reset Pad button reads the command line input parameter, opens the appropriate COM port on the computer 11 if it was legitimate, sends the "reset thyself" character out the serial port to any data entry means 1 connected to the computer 11, closes that COM port, reopens it for input, and finally sets the ResetThyself flag.

Clicking the Quit button hides the ChangePositionOrError form (FIG. 13), and shows the DefectMatrix form, that displays the defect matrix (FIG. 12).

Referring to FIG. 17, PRTDSCHR.WQ2 is an example of a spreadsheet, designed for the commercial program Quattro® Pro. It summarizes and plots the data output called LATEST.DAT (shown in FIG. 23). This data is generated when a computer operator actuates the OUTPUT button within the program MULTINP, MULTIP, MATRIXNP, or MATRIXP, and is an exact copy of the same output data stored in a file with a name that incorporates the date and time. One of these four programs is used to capture data from the data entry means 1.

First, PRTDSCHR.WQ2 imports the latest data file, designated LATEST.DAT, beginning at spreadsheet cell location A1.

Next it copies the data columns to a work space beginning at A101 and ending at A300. Then it copies the position names to B101 through B300. It will be appreciated by those skilled in the art that each cell is designated by a letter and a number, wherein the letter corresponds to a respective column, and a number corresponds to a respective row.

Now the types-of-errors can be appended to those positions in B101 through B300.

Next, sorting can commence, leaving the most numerous defect at A101, the next most numerous at A102, and so on.

Then the original data can be printed. It resides in spreadsheet cells A1 through P32.

Now three, predefined plots are printed. The first (FIG. 18) is the Pareto chart of all defect positions regardless of type-of-error. Then the Pareto chart of all types-of-error, regardless of position, is printed (FIG. 19). Lastly, the Pareto chart of the ten (10) most numerous defects is printed (FIG. 20).

This concludes the execution of the example spreadsheet PRTDSCHR.WQ2.

As described above, programs MULTINP, MULTIP, MATRIXP, and MATRIXNP produce output files which serve two purposes. The first purpose is that of recording the defect data for subsequent printing, analysis, and plotting. The second purpose is that of recovering from a power failure.

In the first instance, the defect data, and the start and end time and date, are recorded twice, with two different file names, in an easily read format. An example of such a file is shown in FIG. 23.

The first line consists of the counts for ten defects, each one representing one of the ten types-of-errors, separated by commas and followed by their sum. This first line represents all the defects for the first of twenty positions. The second line consists of the counts for ten defects, each one representing one of the ten types-of-errors (in the same sequence as for line one above), separated by commas and followed by their sum. This second line represents all the defects for the second of twenty positions. Lines three through twenty follow the pattern of lines one and two above. Line twenty-one is a blank line. Line twenty-two consists of the sums of the counts for the ten defects, each one representing one of the ten types-of-errors (in the same sequence as for lines one through twenty above) for all lines one through twenty above, separated by commas and followed by their sum. Line twenty-three is a blank line. Line twenty-four contains the words "Start" and "End". Line twenty-five contains the start date and the end date, expressed in a numerical format such that the two-digit month occurs first, separated by a hyphen from the two-digit day of the month, separated by a hyphen from the four-digit year. Line twenty-five contains the start time and the end time, expressed in a numerical format such that the hour is the two-digit number of whole hours past midnight, separated by a colon from the two-digit number of minutes past the hour, separated by a colon from the number of seconds past the minute.

The first recording is assigned a file name that reflects the date and time at the moment the OUTPUT button was activated. The first two characters of the filename are the last two digits of the year, like 94 for the year 1994. The second pair of characters of the filename are two digits which represent the month, like 05 for the month of May. The third pair of characters in the file name are two digits which represent the day of the month, like 03 for the third day of the month.

The extension of the file name is the time. The first two characters represent the hour in military time, like 15 for 3:00 pm and 06 for 6:00 am. The third and last character represents the tens of minutes past the hour, like 1 for the period 3:10 through 3:19.

Thus the file name, recorded on May the third, 1994, at 3:09 pm, would be 940503.150.

The second recording of the data is assigned to a file with the name LATEST.DAT (FIG. 23). This generic file name is used by the spreadsheet PRTDSCHR.WQ2 to import the defect data for the purpose of printing, analysis, and plotting.

The two recordings contain exactly the same information, but have different file names.

Output files for recovering from a power failure, as mentioned above, are named BACKUP.DAT, BACKUP.OLD, and BACKUP.BAK. They all have the same format and appearance as shown in FIG. 24.

The first four characters of BACKUP.DAT represent the defect count of the first type-of-error and the first position. In FIG. 24A, B, C it is represented by 20 20 20 30, which constitutes three blank spaces followed by a zero. In a different example, a defect count of ninety-nine would be represented by 20 20 39 39, two blank spaces followed by the digit nine followed by another digit nine. Continuing with FIGS. 24A, 24B, 24C the second group of four characters, 20 20 20 30, represent the defect count of the second type-of-error and the first position, and, again, they constitute three blank spaces followed by a zero. The third group of four characters represent the defect count of the third type-of-error and the first position. The fourth group of four characters represent the defect count of the fourth type-of-error and the first position. This pattern continues until the tenth group of four characters, which represent the tenth type-of-error and the first position. This ends all defects which are specified by the first position.

Now an addition blank space character, a 20, is included before the next four characters, which represent the defect count of the first type-of-error and the second position. Groups of four characters represent the types-of-errors through the tenth type-of-error, which concludes all defects which are specified by the second position.

Before beginning defects specified by the third position, a single blank space character, a 20, is appended. Then groups of four characters represent the ten types-of-errors for the third position.

This pattern continues, with a single blank space character, a 20, before the first type-of-error on a new position. It concludes with the group of four characters which represent the tenth type-of-error and the twentieth position. After this last defect, two characters, OD OA, represent a carriage return and a linefeed.

The next ten groups of four characters, like 20 20 20 30, represent the ten sums of the counts of all defects with the ten types-of-errors, but any position. These ten sums are in the same sequence as the ten types-of-errors described above.

After the tenth sum, three characters 20 OD OA, represent a blank space, a carriage return, and a linefeed.

The next group of four characters, like 20 20 20 30, represent the sum of the counts of defects of the first position, but any type-of-error. The next nineteen groups of five characters, like 20 20 20 20 30, represent the twenty sums of the counts of defects of the twenty positions, but any type-of-error. These twenty sums are in the same sequence as the twenty positions described above. After the last sum, two characters, OD OA, represent a carriage return and a linefeed.

The next five characters, like 20 20 20 20 30, represent the grand total of all defects. After the grand total, two characters, OD OA, represent a carriage return and a linefeed.

Then the next ten characters, like 30 35 2D 31 30 2D 31 39 39 34, represent the starting date 05-10-1994, in this case May 10th, 1994. The next two characters OD OA, represent a carriage return and a linefeed.

The next eight characters, like 31 34 3A 33 35 3A 31 37, represent the starting time 14:35:17, in this case 2:35 pm and 17 seconds. The last two characters, OD OA, represent a carriage return and a linefeed.

One other data file, PANDE,DAT, is generally used as an input. It contains the names of the twenty (20) positions and ten (10) types-of-errors used in the printing of the defect matrix, FIG. 15A, and the ten (10) most numerous defects, FIG. 15B. These names are displayed on the ChangePositionOrError form (FIG. 13) when the DISPLAY button is activated. These names can be edited by first clicking on the desired name, and then editing that name in the edit box on the screen. As a name is edited, it appears in its proper display position, and the file PANDE.DAT is written with the new name.

This file contains the information needed by MULTIP, MULTINP, MATRIXP, and MATRIXNP, that is specific to a particular production line. An example of this file is listed in FIG. 25.

Table 1 (below) shows possible combinations of displays and computer connections, along with the programs executing in the computer 11 and the microcontroller 38.

                  TABLE 1     ______________________________________                         Stand-                         alone     Computer                No Display                         Display   Display     ______________________________________     computer connected                  possible,  example   example     continually  not preferred                             described described     PADD&MULTINP or         herein    herein     PADD&MULTIP     dump of data possible,  example   example     periodically not preferred                             described described     PAD8&MATRIXP or         herein    herein     PAD8&MATRIXNP     computer never                  no output; V/F&LCD   not appli-     connected    no data    display   cable     PADD         collected  units     ______________________________________

Obviously, many modifications may be made without departing from the basic spirit of the present invention. The invention is herein described with particular reference to a defect occurring on a workpiece, and, even more particularly, to entering and analysis of data relating to position and type-of-error. However, the principles of the invention are applicable to any physical event occurring in any physical object. Then, the sketch board will contain a pictorial image of said object, and the indicia 8 will identify the position of said attribute in the object. The indicia 9 will be used to identify any chosen qualitative or quantitative characteristic of the attribute. For example, for a water supply system the attribute may be a place of water leakage. The position of the water leakage place will be identified by the indicia 8, then indicia 9 may identify a nature of this damage, for instance, size, shape, rate of flow through this damage, possible reason, etc.

If the object is a geographical area, and the attribute (or event) is a disease of animals, then the indicia 8 will identify location of sick animals, and the indicia 9 will identify either number of sick animals, or severity of illness, or special symptoms of said disease for this particular location, source of water, level of radiation, etc.

Referring to FIG. 21, another modification of the system of present invention includes sensing members 56 disposed on the front screen 16 to identify one type of parameter. The key board 18 includes electronic circuitry 37 adapted for this design. For example, this system may be employed for entering data relating to size of cracks occurring in certain area of a workpiece. Then, each sensing members 56 will be associated with certain size and activating the respective sensing member 56, the parameter will be entered in the system for further processing. The system can be also utilized for multiple-choice examination.

Referring to FIG. 22, another modification of the data entry means 1 display a pictorial image of an object, and indicia 8 are located directly on the pictorial image, such that indicia 8 can be activated by simply touching the respective area of the pictorial image. Indicia 9 can be used for defining a first type-of-attribute (event), while sensing members 56 can be employed for entering data identifying a second type-of-attribute like production line, shift, operator, etc. Another sensing members 57 can be used for entering a third type-of-attribute like color, or model, serial number, disposition, etc. In principle, the present invention is not limited to the number of types-of-attributes described herein.

Actually, the system of present invention and the data entry means itself may find a plurality of applications in any industry where data are to be entered and analyzed by means of easy-to-use, inexpensive, flexible and effective electronic systems affordable and adaptable to any process.

Accordingly, it will be appreciated by those skilled in the art that within the scope of the appended claims, the invention may be practiced other than has been specifically described herein. ##SPC1## 

What is claimed is:
 1. In combination with a processing means, an apparatus for entering at least one data associated with an object, said apparatus including:a front screen, said at least one data to be entered being identified on said front screen, at least one sensing member disposed on the front screen, said at least one sensing member is associated with said at least one data to be entered, a key board disposed behind the front screen, and a controlling means disposed on the key board for controlling said processing means in response to activating said at least one sensing member.
 2. The apparatus of claim 1, further including a sketch board disposed between the front screen and the key board,wherein the sketch board provides a pictorial image of the object displayed through the front screen, and wherein said at least one sensing member is associated with a respective part of the object.
 3. In combination with a processing means, an apparatus for entering at least one data associated with an object, said apparatus including:a front screen, at least one sensing member disposed on the front screen, said at least one sensing member is associated with said at least one data to be entered, a key board disposed behind the front screen, and a controlling means disposed on the key board for controlling said processing means in response to activating said at least one sensing member, further including a sketch board disposed between the front screen and the key board, wherein the sketch board provides a pictorial image of the object displayed through the front screen, and wherein said at least one sensing member is associated with a respective part of the object, wherein the key board provides at least one key corresponding to said at least one sensing member, said at least one key having a contact portion, said front screen having at least one first aperture, and said sketch board having at least one second aperture, the first and the second apertures being in precise registration with each other and with said contact portion of said at least one key, such that said contact portion is protruded through the first and the second apertures, respectively.
 4. In combination with a processing means, an apparatus for entering at least one data associated with an object, said apparatus including:a front screen, at least one sensing member disposed on the front screen, said at least one sensing member is associated with said at least one data to be entered, a key board disposed behind the front screen, and a controlling means disposed on the key board for controlling said processing means in response to activating said at least one sensing member, further including a sketch board disposed between the front screen and the key board, wherein the sketch board provides a pictorial image of the object displayed through the front screen, and wherein said at least one sensing member is associated with a respective part of the object, wherein said object includes a workpiece, wherein said workpiece has a defect, there are different types of errors occurring in the workpiece, said apparatus further including at least one sensing member associated with a type of said defect. 